home *** CD-ROM | disk | FTP | other *** search
- /* ============
- * PedWindow.hh
- * ============
- *
- * Implemented by PedWindow.cc
- */
-
- #pragma once
-
- #include <Types.h>
-
- #include "PedView.hh"
-
- class PedPane;
- class PedAgent;
-
- enum {
- kPedestalWindowKind = 1024
- };
-
- class PedWindow : public PedView {
- public:
- PedWindow();
- PedWindow(PedAgent *inAgent);
- virtual ~PedWindow();
-
- virtual PedWindow &Window() {return *this;}
- virtual bool IsOpen() {return macWindow != NULL;}
- virtual WindowPtr Ptr() { return macWindow; }
- virtual void GetFrame(Rect &outFrame);
- virtual void GetBounds(Rect &outBounds);
- virtual void SetBounds(const Rect &inBounds);
- virtual void GetTitle(Str255 outTitle);
- virtual void SetTitle(const Str255 inTitle);
-
- virtual PedAgent *Agent();
- virtual void SetAgent(PedAgent *inAgent);
-
- virtual void Open();
- virtual void Open(const Rect &inBounds, const Str255 inTitle);
- virtual void Close();
- virtual void Dispose();
-
- virtual PedPane *Pane();
- virtual void SetPane(PedPane *inPane);
-
- virtual void Focus();
- virtual void Activate();
- virtual void Deactivate();
- virtual void Refresh();
- virtual void Update();
- virtual void Select();
- virtual void Resize(short inWidth, short inHeight);
-
- // Event processing
- virtual void DispatchNullEvent(EventRecord &inEvent);
- virtual void DispatchClickEvent(EventRecord &inEvent);
- virtual void DispatchKey(EventRecord &inEvent);
- virtual void ProcessGoAway(EventRecord &inEvent);
-
- // Message handling
- virtual void HandleClose();
-
- protected:
- bool mPersistent;
- WindowPtr macWindow;
- void *mStorage;
- short mProcID;
- Rect mBounds;
- Str255 mTitle;
- PedPane *mPane;
- PedAgent *mAgent;
- };
-